// map.js
import qqmap from '../../../utils/qqmap'
Page({
  data: {
    latitude: '',
    longitude: '',
    locationName: '云南省西双版纳',
    //报修详情
    repairInfo: null,
  },
  onLoad({ id }) {
    //根据id来查询报修详情
    this.getRepairInfo(id),
      this.geocoder(this.data.locationName)
  },
  //根据id来查询报修详情
  async getRepairInfo(id) {
    const res = await wx.http({
      url: `/repair/${id}`
    })
    this.setData({
      repairInfo: res.data
    })
    console.log(this.data.repairInfo);
  },
  //根据地理位置描述获取经纬度
  geocoder(address) {
    qqmap.geocoder({
      address,
      success: (res) => {
        const latitude = res.result.location.lat
        const longitude = res.result.location.lng
        this.setData({ latitude, longitude })
      }
    })
  },
  //跳转到新增 编辑报修页面
  onGoUpdateRepair() {
    wx.navigateTo({
      url: '/repair_pkg/pages/form/index?id=' + this.data.repairInfo.id
    })
  },
  //取消报修
  onCancelRepair() {
    /* 
    弹出确认框 提示用户是否取消
    发送请求 取消
    提示用户取消成功
    等待跳转到报修列表
    */
    wx.showModal({
      title: '提示',
      content: '您确定要取消吗？',
      success: async ({ confirm }) => {
        if (confirm) {
          //确定取消
          const res = await wx.http({
            url: `/cancel/repaire/${this.data.repairInfo.id}`,
            method: 'put'
          })
          if (res.code !== 10000) {
            return wx.utils.toast(res.message)//没有 打钩 图标
          }

          //默认  有成功  打钩图标提示
          wx.showToast({
            title: '取消成功'
          })

          //跳转
          setTimeout(() => {
            wx.navigateTo({
              url: '/repair_pkg/pages/list/index'
            })
          }, 1500)
        }
      }
    })
  }
})
